<?php
/**
 * User: zhengze
 * Date: 2020/4/18
 * Time: 16:47
 */

namespace  common\helper;


use common\traits\InstanceTrait;

class YaconfHelper
{

    protected static string $file_name = '';

    /**
     * 设置项目名称
     * @param string $file_name
     */
    public static function setFileName(string $file_name): void
    {
        self::$file_name = $file_name;
    }

    /**
     * 获取项目配置
     * @param string $name
     * @param mixed|null $default
     * @return mixed
     */
    public static function getWithName(string $name, $default = NULL)
    {
        return \Yaconf::get(static::$file_name . '.' . $name, $default);
    }

    /**
     * 获取公用配置
     * @param string $name
     * @param mixed|null $default
     * @return mixed
     */
    public static function get(string $name,  $default = NULL)
    {
        return \Yaconf::get($name, $default);
    }

    /**
     * 检测项目配置
     * @param string $name
     * @return mixed
     */
    public static function hasWithFile(string $name)
    {
        return \Yaconf::has(static::$file_name . '.' . $name);
    }

    /**
     * 检测公用配置
     * @param string $name
     * @return mixed
     */
    public static function has(string $name)
    {
        return \Yaconf::has($name);
    }

}